.complex_image {
    position: relative;
    border: 1px solid darkgray;
    overflow: hidden;

    .complex_image_content {
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translateX(-50%) translateY(-50%);

        &>canvas {
            display: block;
        }

        &.rotate90 {
            transform: translateX(-50%) translateY(-50%) rotate(90deg);
        }

        &.rotate180 {
            transform: translateX(-50%) translateY(-50%) rotate(180deg);
        }

        &.rotate270 {
            transform: translateX(-50%) translateY(-50%) rotate(270deg);
        }

        .text_layer_wrapper {
            overflow: hidden;
            position: absolute;
            top: 0;
            left: 0;

            .text_layer {
                top: 0;
                left: 0;
                position: absolute;

                .text_zone {
                    line-height: initial;
                    color: rgba(0, 0, 0, 0);
                    white-space: nowrap;
                    text-align-last: justify;
                    text-align: justify;
                    position: absolute;
                    box-sizing: border-box;
                    font-family: 'Times New Roman', Times, serif;
                }
            }
        }
    }
}